public class Circle extends Shape{
	private double radius;
	private double cx;
	private double cy;
	private Point2D center;
	
	//Notkun: e = new Circle(a,b,c)
	//Fyrir: c>0
	//Eftir: e er hringur með miðpunkt (a,b) og radíus c
	public Circle(double a,double b,double r){
		radius = r;
		cx = a;
		cy = b;
	}
	//Fastayrðing: e er hringur með radíus ekki 0 og miðpunkt í (a,b)
	// Notkun: p = s.getCenter()
    // Fyrir:  ekkert
    // Eftir:  p er miðjan á s
	public Point2D getCenter(){
		center = new Point2D(cx,cy);
		return center;
	}
	
	// Notkun: r = s.getBoundingBox()
    // Fyrir:  ekkert
    // Eftir:  r er minnsti ferhyrningur sem passar utan um s
    public Rectangle getBoundingBox(){
		Rectangle b = new Rectangle(cx, cy,radius,radius);
		return b;
	}
	
	// Notkun: c = s.intersects(o)
    // Fyrir:  ekkert
    // Eftir:  c er true of s og o skarast
    public boolean intersects(Shape o){
		Rectangle t = getBoundingBox();
		Rectangle r = o.getBoundingBox();
		return t.rintersects(r);
	}
	
	// Notkun: s.scale(f)
    // Fyrir:  f > 0
    // Eftir:  s er f-sinnum stærra og miðjan er óbreytt
    public void scale(double f){
		radius = radius * Math.sqrt(f);
	}
	
	//Notkun: r = a.getRadius()
	//Fyrir: ekkert
	//Eftir: r er geisli a
	public double getRadius(){
		return radius;
	}
}